const Model = require('../model/sysuser');

class SysUserService {
  async profile() {
    const data = await Model.findUserProfile();
    return { data };
  }

  /**
   * 根据Id和密码得到数量
   * @param {} args
   */
  async getCountByIdAndPasswd( args ) {
    const data = await Model.getCountByIdAndPasswd(args);
    return { data };
  }

  /**
   * 根据Id 修改密码
   * @param {} args
   */
  async setUserPasswdById ( args ) {
    const data = await Model.setUserPasswdById(args);
    return { data };
  }

  /**
   * 增加一条数据
   * @param  {object} args  参数
   * @return {object}       结果
   */
  async add ( args ) {
    const data = await Model.add(args);
    return { data };
  }
    /**
   * 根据UserName得到一条数据
   * @param  {object} args  参数
   * @return {object}       结果
   */
  async getByUserName( args ){
    const data = await Model.getByUserName(args);
    return { data };
  }

  /**
   * 根据LoginName得到数量
   * @param  {object} args  参数
   * @return {object}       结果
   */
  async getCountByLoginName( args ){
    const data = await Model.getCountByLoginName(args);
    return { data };
  }

  /**
   * 根据Email得到数量
   * @param  {object} args  参数
   * @return {object}       结果
   */
  async getCountByEmail( args ){
    const data = await Model.getCountByEmail(args);
    return { data };
  }

  /**
   * 根据Phone得到数量
   * @param  {object} args  参数
   * @return {object}       结果
   */
  async getCountByPhone( args ){
    const data = await Model.getCountByPhone(args);
    return { data };
  }

  /**
   * 根据用户Id得到数量
   * @param {} args
   */
  async getCountByUserId( args ){
    const data = await Model.getCountByUserId(args);
    return { data };
  }

  /**
   * 根据用户Id修改用户信息
   * @param {} args
   */
  async setUserById( args ){
    const data = await Model.setUserById(args);
    return { data };
  }

  async getUserListByFilter( args ){
    return  await Model.getUserListByFilter(args);
  }
  async getUserCountByFilter( args ){
    return await Model.getUserCountByFilter(args);
  }

  async getYearListByFilter( args ){
    return  await Model.getYearListByFilter(args);
  }
  async getYearCountByFilter( args ){
    return await Model.getYearCountByFilter(args);
  }

}

module.exports = new SysUserService();
